About David Walsh

Senior Software Engineer. MooTools Alumni, Javascript Fanatic, and open source lover. Former @Mozilla , @SitePen

The RSS's url is : https://davidwalsh.name/feed

Please copy to your reader or subscribe it with :

Preview of RSS feed of David Walsh

How to Retrieve WiFi Password on Windows

2024-05-13 18:45:29

Remembering the WiFi password when on a guest network is never easy. Even worse is when it’s no longer posted and someone else is asking you for it. Luckily there’s a built in Windows command to recover the password of a given WiFi network. The Shell Code Open cmd and execute the following command: netsh […]

The post How to Retrieve WiFi Password on Windows appeared first on David Walsh Blog.

How to Fix: Windows WASD Keys Reversed with Arrow Keys

2024-05-02 09:55:27

This past weekend I had the opportunity to be what every father wants, if only for a moment: the “cool dad”. My wife was out of town and my youngest son wanted to play PUBG. I caved in, taught him the basic FPS key binds, and he was having a great time. While he was […]

The post How to Fix: Windows WASD Keys Reversed with Arrow Keys appeared first on David Walsh Blog.

HTML popover Attribute

2024-04-15 19:19:02

Modals have been an important part of websites for two decades. Stacking contents and using fetch to accomplish tasks are a great way to improve UX on both desktop and mobile. Unfortunately most developers don’t know that the HTML and JavaScript specs have implemented a native modal system via the popover attribute — let’s check […]

The post HTML popover Attribute appeared first on David Walsh Blog.

Get Started in AI and NFTs with the Limewire API (Sponsored)

2024-03-26 05:50:46

AI media creation has expanded to incredible video art and a host of other important improvements, and LimeWire is leading the way in creating an awesome interface for the average user to become an AI artist. Limewire has just released its Developer API, a method for engineers like us to create dynamic AI art on […]

The post Get Started in AI and NFTs with the Limewire API (Sponsored) appeared first on David Walsh Blog.

I’m So Old: Web Edition

2024-03-18 21:00:20

Time can be a funny thing. I still remember discovering HTML, CSS, and JavaScript coding. I still remember my first college programming course. I still remember my first day at my first coding job, then my first day at my second coding job, and then my first day at Mozilla. I still remember my first […]

The post I’m So Old: Web Edition appeared first on David Walsh Blog.

Detect Caps Lock with JavaScript

2024-02-06 18:33:10

Anyone is capable of having their caps lock key on at any given time without realizing so. Users can easily spot unwanted caps lock when typing in most inputs, but when using a password input, the problem isn’t so obvious. That leads to the user’s password being incorrect, which is an annoyance. Ideally developers could […]

The post Detect Caps Lock with JavaScript appeared first on David Walsh Blog.

How to Override width and height HTML attributes with CSS

2024-02-05 19:28:01

One of the HTML elements that frequently comes into collision with CSS is the img element. As we learned in Request Metrics’ Fixing Cumulative Layout Shift Problems on DavidWalshBlog article, providing image dimensions within the image tag will help to improve your website’s score. But in a world where responsive design is king, we need […]

The post How to Override width and height HTML attributes with CSS appeared first on David Walsh Blog.

Fixing Cumulative Layout Shift Problems on DavidWalshBlog

2024-01-24 19:56:41

Over 50 thousand developers visit DavidWalshBlog every month from around the world to learn JavaScript tricks and fix problems in their code. Unfortunately, some of them have a slow experience on the site. David tracks the performance of his Core Web Vitals and overall performance with Request Metrics. Recently, we noticed that his CLS performance […]

The post Fixing Cumulative Layout Shift Problems on DavidWalshBlog appeared first on David Walsh Blog.

Date.now()

2024-01-17 20:06:16

Ask any software engineer and they’ll tell you that coding date logic can be a nightmare. Developers need to consider timezones, weird date defaults, and platform-specific date formats. The easiest way to work with dates is to reduce the date to the most simple format possible — usually a timestamp. To get the immediate time […]

The post Date.now() appeared first on David Walsh Blog.

Extract a Number from a String with JavaScript

2024-01-16 19:48:41

User input from HTML form fields is generally provided to JavaScript as a string. We’ve lived with that fact for decades but sometimes developers need to extract numbers from that string. There are multiple ways to get those numbers but let’s rely on regular expressions to extract those numbers! To employ a regular expression to […]

The post Extract a Number from a String with JavaScript appeared first on David Walsh Blog.

Thoughts on Streaming Services: 2024 Edition

2024-01-15 19:08:32

Streaming services have revolutionized content delivery, sending linear media companies into a panic as they watch traditional cable services decay. “Cutting the cord” is a common practice these days, but the streaming landscape isn’t perfect. We’re a decade into streaming so I wanted to share my thoughts on the state of new media: first impressions, […]

The post Thoughts on Streaming Services: 2024 Edition appeared first on David Walsh Blog.

AutoGrow Textareas with CSS

2023-12-18 19:55:51

As the demands of the web change and developers experiment with different user experiences, the need for more native language improvements expands. Our presentation layer, CSS, has done incredibly well in improving capabilities, even if sometimes too slow. The need for native support for automatically expanding textarea elements has been long known…and it’s finally here! […]

The post AutoGrow Textareas with CSS appeared first on David Walsh Blog.

How to Play Grand Poo World 3

2023-11-28 08:35:41

The underground world of creating and streaming Super Mario World-based ROM hacks continues to gain popularity. This popularity is a tribute to the creativity of gamers and the quality of the original 30 year old video game’s mechanics. Over the past decade, incredible ROM hacks like Grand Poo World 1 and 2, Invictus, and Dram […]

The post How to Play Grand Poo World 3 appeared first on David Walsh Blog.

How to Get the Current Branch Name with git

2023-10-29 02:54:30

Most developers spoil themselves with fun command line utilities to make their work easier and more efficient. One such command line helper allows developers to always show the git branch in the command line. How can you get the current branch? With this handy snippet: git branch --show-current It’s great to keep this snippet around […]

The post How to Get the Current Branch Name with git appeared first on David Walsh Blog.

AutoSave with VSCode

2023-10-23 19:33:21

Visual Studio Code has taken the crown of most used text editor, at least in JavaScript spheres. VSCode is fast, feature-filled, and supports thousands of plugins to boost productivity. Developers can also tweak hundreds of settings to enrich functionality. One such feature is the autoSave feature. To autoSave files with VS Code, you can add […]

The post AutoSave with VSCode appeared first on David Walsh Blog.

How to Detect Failed Requests via Web Extensions

2023-10-02 21:37:25

One of the best things that ever happened to t he user experience of the web has been web extensions. Browsers are powerful but extensions bring a new level of functionality. Whether it’s crypto wallets, media players, or other popular plugins, web extensions have become essential to every day tasks. Working on MetaMask, I am […]

The post How to Detect Failed Requests via Web Extensions appeared first on David Walsh Blog.

Welcome to the New LimeWire: AI Media Generation (Sponsored)

2023-09-22 08:35:11

LimeWire was a staple of my youth. LimeWire was software that allowed users to share any type of file during the revolutionary days of file sharing. Fast forward to today and LimeWire is back, again as revolutionary software, but this time in the field of AI content publishing. From creating images to music and video, […]

The post Welcome to the New LimeWire: AI Media Generation (Sponsored) appeared first on David Walsh Blog.

Unveiling 15+ Essential Tools & Resources for Web Designers and Agencies in 2023 (Sponsored)

2023-09-12 18:54:26

You’ve visited countless websites, and now you’re designing your own. Stop and think for a minute about what you’ve liked and didn’t like about some of those you visited. Was it the front page, the layout in general, or the functionalities that either met with your satisfaction or turned you off? The helpful tools and […]

The post Unveiling 15+ Essential Tools & Resources for Web Designers and Agencies in 2023 (Sponsored) appeared first on David Walsh Blog.

Sum an Array of Numbers with JavaScript

2023-09-07 10:06:45

It’s rare that I’m disappointed by the JavaScript language not having a function that I need. One such case was summing an array of numbers — I was expecting Math.sum or a likewise, baked in API. Fear not — summing an array of numbers is easy using Array.prototype.reduce! const numbers = [1, 2, 3, 4]; […]

The post Sum an Array of Numbers with JavaScript appeared first on David Walsh Blog.

JavaScript waitFor Polling

2023-08-14 18:08:16

As more of the JavaScript developers write becomes asynchronous, it’s only natural to need to wait for conditions to be met. This is especially true in a world with asynchronous testing of conditions which don’t provide an explicit await. I’ve written about waitForever, waitForTime, and JavaScript Polling in the past, but I wanted to have […]

The post JavaScript waitFor Polling appeared first on David Walsh Blog.